/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package br.com.menosehmais.dto;

import br.com.menosehmais.framework.persistence.DataTransferObject;
import java.util.LinkedList;
import java.util.List;

/**
 *
 * @author Junior JAFJ
 */
public class VitrinaDTO implements DataTransferObject {
    /*private Map<Nivel, List<PortletDTO>> prateleiras;

    public VitrinaDTO() {
        prateleiras = new EnumMap<Nivel, List<PortletDTO>>(Nivel.class);
    }

    public VitrinaDTO(Map<Nivel, List<PortletDTO>> prateleiras) {
        this.prateleiras = prateleiras;
    }

    public Map<Nivel, List<PortletDTO>> getPrateleiras() {
        return prateleiras;
    }

    public void setPrateleiras(Map<Nivel, List<PortletDTO>> prateleiras) {
        this.prateleiras = prateleiras;
    }
    */
    private Tipo tipo = Tipo.NORMAL;
    private List<PortletDTO> prateleira1 = new LinkedList<PortletDTO>();
    private List<PortletDTO> prateleira2 = new LinkedList<PortletDTO>();
    private List<PortletDTO> prateleira3 = new LinkedList<PortletDTO>();
    private PortletDTO prateleiraFull = new PortletDTO();
    private PortletDTO prateleiraHalf = new PortletDTO();

    public enum Tipo {
        NORMAL,
        HALF,
        FULL
    }

    public VitrinaDTO(Tipo tipoVitrine) {
        /*
         * TO-DO: Implementar controle de setter para vitrines que não estejam
         * classificadas de acordo com o portlet
         */
    }

    public VitrinaDTO() {}

    public Tipo getTipo() {
        return tipo;
    }

    public void setTipo(Tipo tipo) {
        this.tipo = tipo;
    }

    public List<PortletDTO> getPrateleira1() {
        return prateleira1;
    }

    public void setPrateleira1(List<PortletDTO> prateleira1) {
        this.prateleira1 = prateleira1;
    }

    public List<PortletDTO> getPrateleira2() {
        return prateleira2;
    }

    public void setPrateleira2(List<PortletDTO> prateleira2) {
        this.prateleira2 = prateleira2;
    }

    public List<PortletDTO> getPrateleira3() {
        return prateleira3;
    }

    public void setPrateleira3(List<PortletDTO> prateleira3) {
        this.prateleira3 = prateleira3;
    }

    public PortletDTO getPrateleiraFull() {
        return prateleiraFull;
    }

    public void setPrateleiraFull(PortletDTO prateleiraFull) {
        this.prateleiraFull = prateleiraFull;
    }

    public PortletDTO getPrateleiraHalf() {
        return prateleiraHalf;
    }

    public void setPrateleiraHalf(PortletDTO prateleiraHalf) {
        this.prateleiraHalf = prateleiraHalf;
    }

}

/**
 prateleiras: [{
    nivel: 1,
    portlets:[{
        id:*****,
        url:****
    },{
        id:*****,
        url:****
    },{
        id:*****,
        url:****
    }]
 },{
    nivel: 2,
    portlets:[{
        id:*****,
        url:****
    },{
        id:*****,
        url:****
    },{
        id:*****,
        url:****
    }]
 }]
 */